15 research outputs found

    XML-aware data synchronization for mobile devices

    Get PDF
    In everyday life, and when using computer systems in particular, it is sometimes the case that a logical datum is replicated into multiple copies, such as when we send a document by electronic mail, or inform interested parties of a new address of residence. If the datum for some reason changes, we would then also like the changes to be reflected in the copies. The problem of keeping the copies up-to-date with respect to each other is studied under the heading of data synchronization. In this thesis, we address data synchronization for mobile devices with limited energy resources and limited connectivity to the Internet, such as mobile phones. The importance of data synchronization is emphasized here, as it becomes infeasible to communicate continuously and in high volumes about the current state of each copy. The established conventions of the Internet and mobile computing environments on such matters as storage interfaces and data formats define an overall system architecture, into which we as seamlessly as possible want to incorporate our proposal. By focusing on interoperability we lower the threshold for utilizing our research in practice. We present a comprehensive approach to data synchronization for mobile devices that is optimistic and state-based, and which targets opaque and XML files on a standard file system. We consider how to use the available connectivity in an economical manner, and so that existing sources of data on the Internet can be utilized. We focus on XML synchronization, where we identify an opportunity to utilize the structure of the data the format exposes. Specifically, we present an algorithm for merging concurrent changes to XML documents which supports subtree moves, an efficient heuristic algorithm for computing tree-level changes between two XML documents, and an overall architecture and algorithms to support the use of lazily instantiated XML documents. Our data synchronization approach is evaluated quantitatively in several experiments, as well as qualitatively by constructing applications that build on top of the approach. One of our applications is an editor that processes 1 GB XML files on a mobile phone

    A Three-way Merge for XML Documents

    No full text
    Three-way merging is a technique that may be employed for reintegrating changes to a document in cases where multiple independently modified copies have been made. While tools for three-way merge of ASCII text files exist in the form of the ubiquitous di# and patch tools, these are of limited applicability to XML documents

    XML Three-way Merge as a Reconciliation Engine for Mobile Data

    No full text
    Optimistic replication approaches are often employed on mobile devices, which raises the need for reconciliation of concurrently modified data. We propose that three-way merging algorithms, in particular those that are able to process tree-structured data in XML format, make good candidates for a generic data reconciliation engine on mobile devices

    A Sequence-Based Type-Aware Interface for XML Processing

    No full text
    XML has recently made inroads into the data-oriented world of machine-to-machine interaction, most prominently in the form of SOAP and Web services. In this paper we present a new programming interface that views XML documents as sequences of events, and into which awareness of data typing is built in. These two features are intended to make the interface attractive for data-oriented applications that do not use XML internally. Our experience in using this interface in a mobile middleware system indicates that this sequentiality combined with type awareness and properly-layered higher-level interfaces provides a very natural way of handling XML for the data-oriented world

    A Fault-Tolerant Three-Way Merge For XML And HTML

    No full text
    Three-way merging is a technique that is used to reintegrate changes to a document when multiple independently modified copies have been made. Tools for three-way merge of ASCII text files exist in the form of the ubiquitous diff and patch tools, but these are of limited applicability when parts of the documents have been rearranged
    corecore